This repository has been archived by the owner on Dec 22, 2023. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The user sets tick_division_type to one of the below module names (or their own module). This is loaded on the first call to divvy() and _real_divvy() is executed.
Divvy() was moved to Axis.pm from Data::Range.pm because it is a presentation side effect rather than something to do with the data itself. Producing a logarithmic display for the graph does not change the data which could be used in more than one location.
Exact is the old mechanism of dividing the space into equal tick segments.
LinearRounded produces values which are (close to?) visually pleasing (nice whole figures) while keeping the number of ticks somewhere around what the user requested (default of 5).
LinearExpandGraph is an experimental mechanism taken from branch divvy_strategy. In my opinion LinearRounded produces better results but having multiple examples shows that the module loading functions correctly.
Most importantly, users may create and use their own Divvy mechanism. Time based divvy logic will be somewhat different than the simple number set I have done; so I expect the number of Divvy modules to increase.
Implementing a Logarithmic divvy() from here is straight forward. The rest of the adjustments for logarithmic output isn't so obvious.